$(function(){
	
	//加载表格数据
	ajaxTable();
	createSearch();
	setDialog_add();
	closeDialog_add();
	
	setDialog_edit();
	closeDialog_edit();
	
	var p = $('#deptInfoTable').datagrid('getPager'); 
	$(p).pagination({ 
		pageNumber:1,
	    pageSize: 10,//每页显示的记录条数，默认为10 
	    pageList: [2,10,15],//可以设置每页记录条数的列表 
	    beforePageText: '第',//页数文本框前显示的汉字 
	    afterPageText: '页    共 {pages} 页', 
	    displayMsg: '当前显示 {from} - {to} 条记录   共 {total} 条记录'
	}); 
});
function createSearch() {  
    $("<div class='datagrid-btn-separator'></div>'").appendTo(  
     ".datagrid-toolbar"); 
    $("<label>部门名</label><input id='s_deptName' name='s_deptName'/><label>部门编号</label><input id='s_deptNo' name='s_deptNo'>").appendTo(  
    ".datagrid-toolbar");  
   
  
} 
/**--------------table------------------**/
/**
 * 加载表格数据
 */
function formatUserName(value,row,index){  
	var str=[];
	for(var i in row.manager)
		{
		if(i=='userName')
		str.push(row.manager[i]);
		
		}
	
    return str;//row.dept;
}  
function ajaxTable(){
	//加载表格
	$('#deptInfoTable').datagrid({
			toolbar:[{//正上方工具栏
			text:'添加部门',
			iconCls:'icon-add',
			handler:function(){
				//点击工具栏运行的js方法
				openDialog_add();
			}
		},'-',{
				text:'批量删除',
				iconCls:'icon-cancel',
				handler:function(){
					batch('delete');
				}
		}, '-',{
			  	   text:'查找',
			  	   iconCls:'icon-search',
			  	   handler:function(){
			  		  search();
			  	   }
		
			    }  
		],
		loadMsg:'数据加载中,请稍后...',
		onLoadError:function(){
			alert('数据加载失败!');
		},
		queryParams:{//查询条件			
		},
		onClickRow:function(rowIndex, rowData){
			//取消选择某行后高亮
			//alert(rowData.userId);
			$('#deptInfoTable').datagrid('unselectRow', rowIndex);
		},
		onLoadSuccess:function(){
			var value = $('#deptInfoTable').datagrid('getData')['errorMsg'];
			if(value!=null){
				alert("错误消息:"+value);
			}
		}
	}).datagrid('acceptChanges');
}
/**
 * 设置操作列的信息
 * 参数说明
          value 这个可以不管，但是要使用后面 row 和index 这个参数是必须的
          row   当前行的数据
          index 当前行的索引  从0 开始
 */
function optFormater(value,row,index){
	var  deptId = row.deptId;//部门ID
	var id_code = deptId+",'"+row.deptNo+"','"+row.deptName+"'";	
	var edit = '<a href="javascript:openDialog_edit('+id_code+')">编辑</a> | ';
	var del = '<a href="#" onclick="doDel('+row.deptId+')">删除</a>';
	return edit+del;
};

/**--------------添加操作弹出框------------------**/
//设置弹出框的属性
function setDialog_add(){
	$('#deptInfoAdd').dialog({
		title : '部门添加',
		modal: true,         	//模式窗口：窗口背景不可操作
		collapsible : true,  	//可折叠，点击窗口右上角折叠图标将内容折叠起来
		resizable : true,    	//可拖动边框大小
		onClose : function(){   //继承自panel的关闭事件
			deptInfoAddReset();
		}
	});
}
//关闭对话框
function closeDialog_add(){
	$('#deptInfoAdd').dialog('close');
}
//打开对话框
function openDialog_add(){
	$('#deptInfoAdd').dialog('open');
}
//执行用户添加操作
function deptInfoAdd(){
	var validateResult = true;
	//easyui 表单验证
	$('#table_deptInfoAdd input').each(function () {
		if ($(this).attr('required') || $(this).attr('validType')) {
			if (!$(this).validatebox('isValid')) {
				//如果验证不通过，则返回false
				validateResult = false;
				return;
		    }
		}
    });
	if(validateResult==false){
		return;
	}

	$.ajax({
		async : false,
		cache:false,
		type: 'POST',
		dataType : "json",
		data : {
			"deptName": $("#deptInfoAdd_deptName").val(),		
			"deptNo": $("#deptInfoAdd_deptNo").val()		
					},
		url:'../../dept/adddept.do',//请求的action路径
		error: function () {//请求失败处理函数
			alert('请求失败');
		},success:function(data){
			var messgage = "添加成功!";
			if(data==null){//未返回任何消息表示添加成功
				deptInfoAddReset();
				//刷新列表
				reloadTable();
			}else if(data.errorMsg!=null){//返回异常信息
				messgage = data.errorMsg;
			}
			$("#deptInfoAdd_message").html(messgage);
		}
	});
}

function deptInfoAddReset(){
	$("#deptInfoAdd_message").html("");
	$("#deptInfoAdd_deptName").val("");
	$("#deptInfoAdd_deptNo").val("");
	$("#deptInfoAdd_descript").val("");
}
/**--------------编辑操作弹出框------------------**/
//设置弹出框的属性
function setDialog_edit(){
	$('#deptInfoEdit').dialog({
		title : '部门编辑',
		modal: true,         	//模式窗口：窗口背景不可操作
		collapsible : true,  	//可折叠，点击窗口右上角折叠图标将内容折叠起来
		resizable : true    	//可拖动边框大小
	});
}
//打开对话框
function openDialog_edit(deptId,deptNo,deptName){
	deptInfoEditReset(deptId,deptNo,deptName);
	$('#deptInfoEdit').dialog('open');
}
//关闭对话框
function closeDialog_edit(){
	$('#deptInfoEdit').dialog('close');
}
//根据部门id查询部门的信息
function deptInfoEditReset(deptId,deptNo,deptName){
	$("#deptInfoEdit_message").html("");
	$("#deptInfoEdit_deptId").val(deptId);
	$("#deptInfoEdit_deptNo").val(deptNo);
	$("#deptInfoEdit_deptName").val(deptName);
}
//执行用户编辑操作
function deptInfoEdit(){
	var validateResult=true;
	//easyui 表单验证
	$('#table_deptInfoEdit input').each(function () {
		if ($(this).attr('required') || $(this).attr('validType')) {
			
			if (!$(this).validatebox('isValid')) {
				
				//如果验证不通过，则返回false		
				
				validateResult = false;
				return;
		    }
			
		}
  });
	if(validateResult==false){
		return;
	}
	
	$.ajax({
		async : false,
		cache:false,
		type: 'POST',
		dataType : "json",
		data : {
			"deptId":$("#deptInfoEdit_deptId").val(),
			"deptName" : $("#deptInfoEdit_deptName").val(),
			"deptNo" : $("#deptInfoEdit_deptNo").val()
		},
		url: '../../dept/updatedept.do',//请求的action路径
		error: function () {//请求失败处理函数
			alert('请求失败');
		},success:function(data){
			var messgage = "修改成功!";
			if(data==null){//未返回任何消息表示添加成功
				//刷新列表
				reloadTable();
			}else if(data.errorMsg!=null){//返回异常信息
				messgage = data.errorMsg;
			}
			$("#deptInfoEdit_message").html(messgage);
		}
	});
}
/**
 * 批量操作
 * @return
 */
function batch(flag){
	if($('#deptInfoTable').datagrid('getSelected')){
		//首先如果用户选择了数据，则获取选择的数据集合
		var ids = [];
		var cods = [];
		var nas=[];
		var selectedRow = $('#deptInfoTable').datagrid('getSelections');
		//alert(selectedRow.length);
		for(var i=0;i<selectedRow.length;i++){
			ids.push(selectedRow[i].deptId);
			cods.push(selectedRow[i].deptNo);
			nas.push(selectedRow[i].deptName);
			
		}
		var deptId = ids.join(',');//用户编号
		
			//删除操作
			$.messager.confirm('删除提示', '你确定永久删除下列部门吗?<br/>'+nas.join(','), function(r){
				if (r){
					var url = '../../dept/deldept.do?deptId='+deptId;
					changeStatus(url);
					
				}
			});
		
	}//end of if
}
/**
 * 修改状态的Ajax
 * @param url
 * @return
 */
function changeStatus(url){
	$.ajax({
		async : false,
		cache:false,
		type: 'POST',
		dataType : "json",
		url:url,//请求的action路径
		error: function () {//请求失败处理函数
			alert('请求失败');
		},success:function(data){
			if(data!=null){//返回异常信息
				$.messager.alert('错误提示',data.errorMsg,'error');
			}
			reloadTable();
		}
	});
}
//刷新表格
function reloadTable(){
	  var queryParams = $('#deptInfoTable').datagrid('options').queryParams;  
	  queryParams.deptNo=$('#s_deptNo').val();	
	  queryParams.deptName=$('#s_deptName').val();
	  $('#deptInfoTable').datagrid('options').queryParams=queryParams;        
	  $("#deptInfoTable").datagrid('reload'); 
	//alert($("#s_userName").val());
	//$('#userInfoTable').datagrid('reload');
}
function search()
{    
	  //$('#userInfoTable').datagrid('options').pageNumber.val(1);       
	  reloadTable();

}
/**--------------执行删除操作------------------**/
function doDel(deptId){
	$.messager.confirm('删除提示', '你确定永久删除该数据吗?', function(r){
		if (r){
			var url = "../../dept/deldept.do?deptId="+deptId;
			changeStatus(url);
		}
	});
}